// 大事件项目技术:  JQ + LayUI(布局用的) + art-templete
// 95%都是用的之前学过的  增删改查的技术(综合大练习)   5%要求同学们必会的(权限管理)

// 权限(服务器怎么知道你是合法的用户在操作)

// 复习  路径   ./xxx.png   文件夹名/xxxx.png   ../xxx.png
//       路径   /xxxx.png    /代表的是当前整个文件夹的盘符根目录
// 如果资源访问以 /开头, 切记用服务器打开(live server). 以服务器为起点(项目文件夹)往下去查资源
// 如果资源访问以 /开头, 用普通模式打开浏览器, 资源查找以当前最终的盘符为开头,往下查

// token这个身份认证信息
// 工作原理: 登录成功之后, 服务器会给你一个叫token的字段, 保存的是一串加密后的字符串(胸牌).
//           登录进去之后, 做的任何操作, 都需要主动出示这个token字段信息, 这样服务器就知道是谁在操作了
// 比喻:第一次入职, 人事会给你一个工牌(token), 后面再公司做的一些有权限的操作(公司员工才能做的操作), 需要出示这个工牌.

// 面试题: token你是怎么存储的? 一般是存在localStorage内. 后续有权限的接口, 携带token发送到后端.
//        你是怎么携带token发送到后端的呢? 一般是放在 请求头 里面发送过去的


// ①引入layui.js文件
// 全局内就会有一个对象叫  layui


// const layui = {
//     form: {
//         verify: function () { }
//     }
// }

// // 第一种写法
// layui.form.verify()

// // 第二种写法
// const form1 = layui.form; // {verify: function () {}}
// form1.verify()

// // 第三种写法 ES6
// const { form2 } = layui; // {verify: function () {}}
// form2.verify()


// const { a } = {
//     a: 1
// }
// console.log(a);//1


// index.html(需要设置请求头,传递token)
// ①功能一: 进入index.html, 发起用户基本信息的ajax
// 业务逻辑: 用户名username和昵称nickname  优先渲染 nickname
//          如果有头像图片, 咱们就渲染图片, 让文字头像隐藏
//          如果没有头像图片,咱们就渲染文字头像 ---> 文字头像需要提取用户名首字母转成大写
//          把用户名渲染到 欢迎 xxx 上


// ②功能二:  给以/my/开头的路径 统一设置请求头
// 逻辑: 找到baseAPI.js, 以/my/开头的路径统一设置请求头(统一为后面有/my/的接口发送token)

// ③功能三:  退出功能
// 逻辑: 点击退出, 弹询问框, 然后再清除token, 跳转到登录页面

// ④功能四:  如果用户没有登录过或者伪造token或者token过期, 手动输入Index.html或者后续其他有权限操作, 要强制跳转到login.html页面
// 逻辑: 对用户权限认证进行统一管理, 所以要把认证信息失败的逻辑写到complete函数内


// user_info.html
// ⑤功能五: 个人中心的  基本资料  做输入的验证, 需要验证昵称 长度不能大于6位  再验证邮箱

// ⑥功能六: 点击个人中心  发ajax获取用户基本信息 要把获取到的基本信息渲染到个人中心的input框内
//          调用form.val(值1, 值2) 要注意:input框的name="值" 要和传递到form.val(值1, 值2)的值2的属性进行一一匹配. 值1填 lay-filter="值1"
//          举列子   <input name="username" /> 那么 form.val('值1', {name: '张三'}) 这样张三才能填入到input框内



// base64图片本质   字符串   图片是另一种展现形式, 减轻服务器压力(跟着页面一起发送给客户端, 就不需要发送额外请求)
// 缺点: 体积大, 大图片使用影响页面加载速度.  不经常更换的小图